package com.lgy.aspect;

import com.lgy.controller.BaseController;
import com.lgy.exception.SellException;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;


@Aspect
@Component
public class SellerAuthorize extends BaseController {

    @Autowired
    private StringRedisTemplate redisTemplate;

    @Pointcut("execution(public * com.lgy.controller.Seller*.*(..))" +
    "&& !execution(public * com.lgy.controller.SellerUserController.*(..))")
    public void verify() {}

    @Before("verify()")
    private void doVerify() throws SellException {
//        // 查询cookie
//        String cookie = CookieUtils.getCookie(getHttpServletRequest(), CookieConstant.TOKEN);
//        if(StringUtils.isEmpty(cookie)) {
//            throw new SellException("token不存在");
//        }
//
//        String token = redisTemplate.opsForValue().get(String.format(RedisConstant.TOKEN_PREFIX, cookie));
//        if(StringUtils.isEmpty(token)) {
//            throw new SellException("token不存在");
//        }
    }
}
